import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import TOCInline from '@theme/TOCInline';

# Linux

<TOCInline toc={toc} />

## 前言

- 购买捐赠版可以上 https://www.zfile.vip/pricing 查看功能介绍并购买.
- ZFile Pro 支持从 4.x 兼容升级，不支持从 3.x 或更早的版本带数据升级.

<span className={"text-red-500"}>提示：部署 ZFile 捐赠版之前，请先停止之前的版本，这个很重要，不然可能会造成数据文件损坏或更新后仍然显示旧版本。</span>

## 全新部署 {#install}

**tips: 如果你不知道你的环境到底是 `amd64` 还是 `arm`，一般来说就是 `amd64`，一般 `arm` 架构的机器，购买时会特殊标注的。**

<Tabs groupId="operating-arch">
<TabItem value="amd64" label="amd64">

```bash showLineNumbers
# highlight blue next
export ZFILE_INSTALL_PATH=~/zfile-pro                                   # 声明安装到的路径
mkdir -p $ZFILE_INSTALL_PATH && cd $ZFILE_INSTALL_PATH                  # 创建文件夹并进入
wget --no-check-certificate https://c.jun6.net/ZFILE-PRO/zfile-pro-release_linux_amd64.tar.gz  # 下载 zfile 最新版
tar -zxvf zfile-pro-release_linux_amd64.tar.gz                          # 解压
rm -rf zfile-pro-release_linux_amd64.tar.gz                             # 删除压缩包
chmod +x $ZFILE_INSTALL_PATH/bin/*.sh                                   # 授权启动停止脚本
```

</TabItem>
<TabItem value="arm64" label="arm64">

```bash showLineNumbers
# highlight blue next
export ZFILE_INSTALL_PATH=~/zfile-pro                                   # 声明安装到的路径
mkdir -p $ZFILE_INSTALL_PATH && cd $ZFILE_INSTALL_PATH                  # 创建文件夹并进入
wget --no-check-certificate https://c.jun6.net/ZFILE-PRO/zfile-pro-release_linux_arm.tar.gz    # 下载 zfile 最新版
tar -zxvf zfile-pro-release_linux_arm.tar.gz                            # 解压
rm -rf zfile-pro-release_linux_arm.tar.gz                               # 删除压缩包
chmod +x $ZFILE_INSTALL_PATH/bin/*.sh                                   # 授权启动停止脚本
```

</TabItem>
</Tabs>

<details>
    <summary>安装目录详解</summary>

上面命令中第一行中的 `~/zfile-pro`，其中 `~` 表示用户目录
- 对于 `root` 用户, `~`  = `/root`,  `~/zfile-pro` 表示在 `/root/zfile-pro` 路径下。
- 对于其他用户,  `~` = `/home/用户名` 表示在 `/home/用户名/` 路径下。如对于 `oracle` 用户,  `~/zfile-pro` 则表示安装在 `/home/oracle/zfile-pro` 下。

如我想安装在 `/data/zfile-pro` 路径下，可以把上面命令第一行修改为 `export ZFILE_INSTALL_PATH=/data/zfile-pro`。
</details>

### 启动项目

```bash showLineNumbers
~/zfile-pro/bin/start.sh                                                # 启动项目
```

启动后浏览器访问 **`http://ip:8080`** 即可，如启动后无法访问，请检查 **`端口是否冲突`** 或 **`防火墙/安全组是否开启(云服务器厂商、宝塔等)`**。

简单检查方式为在服务器执行 `curl http://127.0.0.1:8080`
- 如返回 `curl: (7) Failed connect to 127.0.0.1:8080; Connection refused` 表示未启动成功。
- 如返回 `<!DOCTYPE html> <html lang="zh-CN">……` 等字样表示启动成功，如启动成功但通过服务器 IP 无法访问，那一般就是防火墙/安全组未放行端口问题。

### 其他命令 {#command}

默认未修改安装路径的情况下，程序相关命令还包含：

```bash showLineNumbers
~/zfile-pro/bin/start.sh       # 启动项目
~/zfile-pro/bin/stop.sh        # 停止项目
```

### 配置文件路径 {#config}

默认未修改安装路径的情况下，程序配置文件路径为：

```bash showLineNumbers
~/zfile-pro/application.properties
```

一般无需修改，如需修改请参考左侧导航栏中的 `配置文件` 部分。

## 更新版本 {#update}

更新程序前务必停止程序再进行操作，命令见下方<font color="#facc15">黄色高亮部分</font>（不必担心之前的配置被删除，不在这个目录存储）：

如没修改过安装路径，使用下面的命令，修改过安装路径，则替换下方命令中的 `~/zfile-pro` 部分为你的安装路径，见下方<font color="60a5fa">蓝色高亮部分</font>：

<Tabs groupId="operating-arch">
<TabItem value="amd64" label="amd64">

```bash showLineNumbers
# highlight blue next
export ZFILE_INSTALL_PATH=~/zfile-pro                                   # 声明安装路径

# highlight yellow next
$ZFILE_INSTALL_PATH/bin/stop.sh                                         # 停止程序
# highlight yellow next
rm -rf $ZFILE_INSTALL_PATH                                              # 删除安装文件夹

# 重新下载安装最新版
mkdir -p $ZFILE_INSTALL_PATH && cd $ZFILE_INSTALL_PATH                  # 创建文件夹并进入
wget --no-check-certificate https://c.jun6.net/ZFILE-PRO/zfile-pro-release_linux_amd64.tar.gz  # 下载 zfile 最新版
tar -zxvf zfile-pro-release_linux_amd64.tar.gz                          # 解压
rm -rf zfile-pro-release_linux_amd64.tar.gz                             # 删除压缩包
chmod +x $ZFILE_INSTALL_PATH/bin/*.sh                                   # 授权启动停止脚本

$ZFILE_INSTALL_PATH/bin/start.sh                                        # 启动项目
```

</TabItem>
<TabItem value="arm64" label="arm64">

```bash showLineNumbers
# highlight blue next
export ZFILE_INSTALL_PATH=~/zfile-pro                                   # 声明安装路径

# highlight yellow next
$ZFILE_INSTALL_PATH/bin/stop.sh                                         # 停止程序
# highlight yellow next
rm -rf $ZFILE_INSTALL_PATH                                              # 删除安装文件夹

# 重新下载安装最新版
mkdir -p $ZFILE_INSTALL_PATH && cd $ZFILE_INSTALL_PATH                  # 创建文件夹并进入
wget --no-check-certificate https://c.jun6.net/ZFILE-PRO/zfile-pro-release_linux_arm.tar.gz    # 下载 zfile 最新版
tar -zxvf zfile-pro-release_linux_arm.tar.gz                            # 解压
rm -rf zfile-pro-release_linux_arm.tar.gz                               # 删除压缩包
chmod +x $ZFILE_INSTALL_PATH/bin/*.sh                                   # 授权启动停止脚本

$ZFILE_INSTALL_PATH/bin/start.sh                                        # 启动项目
```

</TabItem>
</Tabs>

## 帮我安装🔍
[技术支持](/support/)
